package net.cloudcodex.shared.dto.home;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import net.cloudcodex.shared.dto.NotificationDTO;

/**
 * A campaign public description, viewable by players.
 * 
 * @author Thomas
 */
public class CampaignPublicSummaryDTO implements Serializable {
	
	/**
	 * Id of the campaign.
	 */
	private long id;

	/**
	 * Name of the campaign.
	 */
	private String name;
	
	/**
	 * Url of the campaign icon.
	 */
	private String icon;
	
	/**
	 * Campaign's notifications.
	 */
	private List<NotificationDTO> notifications;

	/**
	 * Campaign's creation date.
	 */
	private Date creationDate;
	
	/**
	 * Nickname of the campaign's Game Master.
	 */
	private String gameMasterNickname;
	
	/**
	 * Game of the campaign.
	 */
	private String game;
	
	/**
	 * @return the id
	 */
	public long getId() {
		return id;
	}

	/**
	 * @param id the id to set
	 */
	public void setId(long id) {
		this.id = id;
	}

	/**
	 * @return the name
	 */
	public String getName() {
		return name;
	}

	/**
	 * @param name the name to set
	 */
	public void setName(String name) {
		this.name = name;
	}

	/**
	 * @return the icon
	 */
	public String getIcon() {
		return icon;
	}

	/**
	 * @param icon the icon to set
	 */
	public void setIcon(String icon) {
		this.icon = icon;
	}

	/**
	 * @return the notifications
	 */
	public List<NotificationDTO> getNotifications() {
		return notifications;
	}

	/**
	 * @param notifications the notifications to set
	 */
	public void setNotifications(List<NotificationDTO> notifications) {
		this.notifications = notifications;
	}

	/**
	 * @return the creationDate
	 */
	public Date getCreationDate() {
		return creationDate;
	}

	/**
	 * @param creationDate the creationDate to set
	 */
	public void setCreationDate(Date creationDate) {
		this.creationDate = creationDate;
	}

	/**
	 * @return the gameMasterNickname
	 */
	public String getGameMasterNickname() {
		return gameMasterNickname;
	}

	/**
	 * @param gameMasterNickname the gameMasterNickname to set
	 */
	public void setGameMasterNickname(String gameMasterNickname) {
		this.gameMasterNickname = gameMasterNickname;
	}

	/**
	 * @return the game
	 */
	public String getGame() {
		return game;
	}

	/**
	 * @param game the game to set
	 */
	public void setGame(String game) {
		this.game = game;
	}
}
